package com.ruoyi.produce.process.costAccounting.mapper;

import com.ruoyi.produce.process.costAccounting.domain.CostAccounting;
import com.ruoyi.produce.process.costAccounting.domain.CostAccountingCond;

import java.util.List;

/**
 * 成本结算
 * 数据层
 */
public interface CostAccountingMapper {
    /**
     * 查找成本结算
     * @param cond
     * @return
     */
    public List<CostAccounting> selectCostAccountingList(CostAccountingCond cond);

    /**
     * 根据编号查找指定成本结算
     * @param costAccountingId 成本结算编号
     * @return
     */
    public CostAccounting selectCostAccountingById(String costAccountingId);

    /**
     * 根据生产计划编号查询是否有结算记录
     * @param planSelfId
     * @return
     */
    CostAccounting selectCostAccountingByPlanSelfId(String planSelfId);

    /**
     * 新增成本结算
     * @param costAccounting
     * @return
     */
    public int insertCostAccounting(CostAccounting costAccounting);

    /**
     * 更新成本结算
     * @param costAccounting
     * @return
     */
    public int updateCostAccounting(CostAccounting costAccounting);

    /**
     * 删除成本结算
     * 仅修改成本结算删除标志
     * @param costAccounting
     * @return
     */
    public int updateCostAccountingDeleteFlag(CostAccounting costAccounting);

    /**
     * 获取最新的一条成本结算编号
     * @return
     */
    String getCostAccountingId();

//    /**
//     * 更新审批状态
//     * @return
//     */
//    int completeApprovalFlag(String costAccountingId);
//
//    /**
//     * 更新审批状态
//     * @return
//     */
//    int refuseApprovalFlag(String costAccountingId);
}
